package cn.rokka.rbac.qo;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.util.List;

@Getter
@Setter
@ToString
public class PageResult<T> {
    private int currentPage;
    private int pageSize;
    private int totalCount;
    private List<T> data;
    private int totalPage;
    private int prevPage;
    private int nextPage;

    public PageResult(int currentPage, int pageSize, int totalCount, List<T> data) {
        this.currentPage = currentPage;
        this.pageSize = pageSize;
        this.totalCount = totalCount;
        this.data = data;

        this.totalPage = totalCount % pageSize == 0?totalCount/pageSize:totalCount/pageSize+1;
        this.prevPage = Math.max(1,currentPage-1);
        this.nextPage = Math.min(totalPage,currentPage+1);
    }
}
